/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Classes;

/**
 *
 * @author Gustavo-Note
 */
public class Retangulo {

    public double getBase() {
        return base;
    }

    public void setBase(double base) throws AppException {
        if(base <= 0){
            throw new AppException(MSG_BASE_NEGATIVA);
        }
        this.base = base;
    }

    public double getAltura() {
        return altura;
    }

    public void setAltura(double altura) throws AppException {
        if(altura <= 0){
            throw new AppException(MSG_ALTURA_NEGATIVA);
        }
        this.altura = altura;
    }

    public Retangulo(double base, double altura) throws AppException {
        if(altura <= 0) {
            throw new AppException(MSG_ALTURA_NEGATIVA);
        }
        else if(base <= 0) {
            throw new AppException(MSG_BASE_NEGATIVA);
        }
        else{
            this.base = base;
            this.altura = altura;
        }
    }

    
    public double area() {
        return base*altura;
    }
    
    public double perimetro() {
        return (2*base) + (2*altura);
    }
    
    private double base;
    private double altura;
    
    public static final String MSG_BASE_NEGATIVA = "Base não pode ser negativa.";
    public static final String MSG_ALTURA_NEGATIVA = "Altura não pode ser negativa.";
    
}
